home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-02-23 | 1.9 KB | 48 lines | [TEXT/GEOL] |
- Item forwarded by A33 to A34
-
- Item 7153738 19-Feb-90 01:10PST
-
- From: D0416 Futuresoft System Design,PRT
-
- To: D5295 Reseach SW Design, D Goldman,PRT
-
- cc: MACAPP.TECH$ MacApp Technical
-
- Sub: Re(3) Undoable Cmds
-
- Dave,
-
- RE: “Thanks for the suggestions. However, I'm pretty sure that this is more or
- less one of the things I already tried ("Simply having TrackMouse return
- myCommand won't work."). Chief among the reasons it doesn't work is that you
- need to go through PerformCommand to set up gLastCommand and a few other
- things. (gLastCommand tells the undo machinery what command it's supposed to be
- undo/redoing.)”
- ------------------------------------
-
- Actually, you (or rather MacApp) will end up going through PerformCommand, uh…
- eventually. It goes like this:
- • You return your new undoable command in TYourControlTrackMouse.
- • TYourControlTrackMouse returns the new command back to
- TApplication.TrackMouse which now reconizes the new command and frees the old
- one continuing to track using the _new_ command.
- • On trackRelease phase TApplication.TrackMouse then unwinds back to
- TApplication.HandleMouse which unwinds to DispatchEvent returning your new
- command the whole way.
- • Finally we unwind back to TApplication.HandleEvent (your new command
- still intact) which then calls the infamous PerformCommand(yourNewCmd). From
- here MacApp can begin the whole DoIt, UnDoIt and ReDoit stuff that it so
- happily wants to do. Whew!
-
- Of course most of this, as you stated, will probably be simplified and made
- more flexible in MA 2.0 final so I guess I’ll just say about the above:
-
- “Never mind”,
- -Ken Addison
-
- PS: Steve F. did the most amusing description at the MA Conference about the
- chain of events after a mouseDown. His description was full of animation and
- his quick wit. It was great!
-
-
-